package cn.edu.njtc.entity.pojo;


import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import org.springframework.stereotype.Component;
import java.io.Serializable;
import java.time.LocalDateTime;


/**
 * lombok:java开发中的一个插件技术
 * 作用：简化java类中的包括构造器/getter/setter/toString
 * @Getter and @Setter
 * @AllArgsConstructor
 * @NoArgsConstructor
 * @ToString
 * @EqualsAndHashCode
 * @Data
 * 操作：
 * 1.在IDEA安装插件
 * 2.利用maven,引入lombok的依赖
 * 3.在类的声明中，添加注释
 *
 * Spring提供了一组注解，类似spring.xml配置文件中替代bean标签
 * 包括：
 * @Component 组件
 * @Repository 持久层操作相关的bean
 * @Service 业务层
 * @Controller(RestController) 控制层
 * 以上四个注解使用频率最高，且完全可以互相替换(语义区别)
 *
 * @Configuration 配置类
 *
 * Spring使用注解实现Ioc的操作
 * 1.配置组件扫描 component-scan,在spring配置文件中通知spring把带有特殊注解的类创建bean
 */


@Setter
@Getter
@AllArgsConstructor
@ToString
@NoArgsConstructor
@Component
@Schema(description = "用户实体")
public class User  implements Serializable {
    @Schema(description = "用户id")
    private Integer id;

    private String name;

    private String phone;

    private String password;
    private LocalDateTime created;
    private LocalDateTime updated;
    private Boolean deleted;
}
